<?php

date_default_timezone_set('Asia/Saigon');

class SiteController extends HomeController {

    public $layout = '//layouts/main';

    public function actionIndex() {
        Yii::app()->clientScript->registerMetaTag('salesmartlink,to chuc, chung nhan, the tieu dung thong minh,am nhac, giai tri, am thuc, du lich, pr thuong hieu, san pham, dich vu, y te, bao hiem, oto, xe may, lam dep, my pham, thoi trang, thiet ke web, in an, dien tu - gia dung, giao duc, noi that, bat dong san, tai chinh', 'keywords');
        Yii::app()->clientScript->registerMetaTag('Cổng thông tin điện tử saleSmartlink.com là Tổ chức chứng nhận và giám sát hoạt động bán hàng khuyến mãi đầu tiên tại Việt Nam thông qua việc phát hành thẻ Tiêu dùng Thông minh – saleSmartlink Card tích hợp tiện ích tài khoản ngân hàng cho người tiêu dùng trong nước và quốc tế. salesamrtlink là hệ thống thông tin dịch vụ, chúng tôi luôn đồng hành với các doanh nghiệp trong các dịch vụ tìm kiếm khách hàng và chúng tôi luôn bảo vệ lợi ích của khách hàng.', 'description');
        $this->pageTitle = 'Thẻ tiêu dùng thông minh';
        $this->render('home', array(
        ));
    }

    public function actionThoat() {
        $this->pageTitle = 'Thẻ tiêu dùng thông minh';
        // unset($_SESSION['user_salesmart']);
        $session = new CHttpSession;
        $session->open();
        //unset($session['user_salesmart']);
        $session->clear();
        $session->close();
        //Yii::app()->session->destroy();
        $this->redirect(Yii::app()->homeUrl);
    }

    public function actionDemo() {
        $this->pageTitle = 'Thẻ tiêu dùng thông minh';
        $this->render('/_form/demo', array(
        ));
    }

//
    public function actionThongbao($ketqua) {
        Yii::app()->clientScript->registerMetaTag('salesmartlink,to chuc, chung nhan, the tieu dung thong minh,am nhac, giai tri, am thuc, du lich, pr thuong hieu, san pham, dich vu, y te, bao hiem, oto, xe may, lam dep, my pham, thoi trang, thiet ke web, in an, dien tu - gia dung, giao duc, noi that, bat dong san, tai chinh', 'keywords');
        Yii::app()->clientScript->registerMetaTag('Cổng thông tin điện tử saleSmartlink.com là Tổ chức chứng nhận và giám sát hoạt động bán hàng khuyến mãi đầu tiên tại Việt Nam thông qua việc phát hành thẻ Tiêu dùng Thông minh – saleSmartlink Card tích hợp tiện ích tài khoản ngân hàng cho người tiêu dùng trong nước và quốc tế. salesamrtlink là hệ thống thông tin dịch vụ, chúng tôi luôn đồng hành với các doanh nghiệp trong các dịch vụ tìm kiếm khách hàng và chúng tôi luôn bảo vệ lợi ích của khách hàng.', 'description');
        $this->pageTitle = 'Thẻ tiêu dùng thông minh';
        $this->render('//site/thanks', array(
            'ketqua' => $ketqua,
        ));
    }

    public function actionThongbaogiaodich($st, $or) {
        Yii::app()->clientScript->registerMetaTag('salesmartlink,to chuc, chung nhan, the tieu dung thong minh,am nhac, giai tri, am thuc, du lich, pr thuong hieu, san pham, dich vu, y te, bao hiem, oto, xe may, lam dep, my pham, thoi trang, thiet ke web, in an, dien tu - gia dung, giao duc, noi that, bat dong san, tai chinh', 'keywords');
        Yii::app()->clientScript->registerMetaTag('Cổng thông tin điện tử saleSmartlink.com là Tổ chức chứng nhận và giám sát hoạt động bán hàng khuyến mãi đầu tiên tại Việt Nam thông qua việc phát hành thẻ Tiêu dùng Thông minh – saleSmartlink Card tích hợp tiện ích tài khoản ngân hàng cho người tiêu dùng trong nước và quốc tế. salesamrtlink là hệ thống thông tin dịch vụ, chúng tôi luôn đồng hành với các doanh nghiệp trong các dịch vụ tìm kiếm khách hàng và chúng tôi luôn bảo vệ lợi ích của khách hàng.', 'description');
        $this->pageTitle = 'Thẻ tiêu dùng thông minh';
        $ketqua1 = substr($st, -1); //lay so cuoi cung

        $ketqua = 6;
        if ($ketqua1 == 1) {
            $ketqua = 5;
        }
        $ketquatv = substr($st, -2);
        $state = substr($ketquatv, 0, 1); //lay so dau tien
        if ($state == 1) {
            $model = Apay::model()->find(' `code`="' . $or . '"');
            if (!empty($model)) {
                $model->state = 1;
                $model->daytime = new CDbExpression('NOW()');
                $time = strtotime($model->daytime);
                $final = date("Y-m-d h:i:s", strtotime("+".$model->thang." month", $time));
                $model->dayend='"'.$final.'"';
                $model->save();             
            }
        }
        $this->render('//site/thanks', array(
            'ketqua' => $ketqua,
            'state' => $state,
        ));
    }

    public function actiondanhmuc($url) {
        Yii::app()->clientScript->registerMetaTag('salesmartlink,to chuc, chung nhan, the tieu dung thong minh,am nhac, giai tri, am thuc, du lich, pr thuong hieu, san pham, dich vu, y te, bao hiem, oto, xe may, lam dep, my pham, thoi trang, thiet ke web, in an, dien tu - gia dung, giao duc, noi that, bat dong san, tai chinh', 'keywords');
        Yii::app()->clientScript->registerMetaTag('Cổng thông tin điện tử saleSmartlink.com là Tổ chức chứng nhận và giám sát hoạt động bán hàng khuyến mãi đầu tiên tại Việt Nam thông qua việc phát hành thẻ Tiêu dùng Thông minh – saleSmartlink Card tích hợp tiện ích tài khoản ngân hàng cho người tiêu dùng trong nước và quốc tế. salesamrtlink là hệ thống thông tin dịch vụ, chúng tôi luôn đồng hành với các doanh nghiệp trong các dịch vụ tìm kiếm khách hàng và chúng tôi luôn bảo vệ lợi ích của khách hàng.', 'description');
        $this->pageTitle = 'Thẻ tiêu dùng thông minh';
        $category = Category::model()->findByUrl($url);
        $this->pageTitle = $category->catename;

        $category1 = Category::model()->findAll(array(
            'condition' => 'flag=1 and parent= ' . $category->cateid,
        ));
        $sql = 'flag=1 AND cate_id in(' . $category->cateid;

        if (!empty($category1)) {
            foreach ($category1 as $item) {
                $sql = $sql . ',' . $item->cateid;
            }
            $sql = $sql . ')';
        } else {
            $sql = 'flag=1 AND cate_id=' . $category->cateid;
        }
        $sql = $sql . ' AND `pr_enddate` >= CURDATE( ) order by `position` ASC';
        $criteria = new CDbCriteria();
        $criteria->condition = $sql;
        //$criteria->order = 'rank DESC,id DESC';

        $count = Product::model()->count($criteria);
        $pages = new CPagination($count);
        //results per page
        $pages->pageSize = 30;
        $pages->applyLimit($criteria);
        $produc = Product::model()->findAll($criteria);

        $this->render('danh-muc', array(
            'produc' => $produc,
            'pages' => $pages,
            'category' => $category,
                //'sql' => $sql,
        ));
    }

    public function actionDetail($id) {


        $produc = Product::model()->findByPk($id);
        $this->pageTitle = $produc->pr_name;
        Yii::app()->clientScript->registerMetaTag($produc->pr_meta, 'keywords');
        Yii::app()->clientScript->registerMetaTag($produc->pr_description, 'description');
        $criteria = new CDbCriteria();
        $criteria->condition = 'flag=1 AND cate_id=' . $produc->cate_id . ' AND prid<>' . $produc->prid . ' AND `pr_enddate` >= CURDATE( )';
        $criteria->limit = 9;
        $criteria->order = 'prid DESC';
        $items = Product::model()->findAll($criteria);
        $category = Category::model()->findByPk($produc->cate_id);
        //$info = Page::model()->findByUrl('thongtinmuahang');
        //$info = isset($info) ? $info->content : '';
        $this->render('detail', array(
            'items' => $items,
            'produc' => $produc,
            //'info' => $info,
            'category' => $category,
        ));
    }

    public function actionPage($url) {

        $page = Page::model()->findByUrl($url);

// if page is not found, then run a controller with that name
        if ($page === NULL) {
            $this->render('page', array(
                'pages' => $page
            ));
            throw new CHttpException(400, 'Khong tim thay trang');
        } else {
            $this->pageTitle = $page->title;
            Yii::app()->clientScript->registerMetaTag($page->meta, 'keywords');
            Yii::app()->clientScript->registerMetaTag($page->keywork, 'description');
            $this->render('page', array(
                'pages' => $page
            ));
        }
    }

    public function actionDynamiccities() {
        $data = District::model()->findAll('cityID=:cityID', array(':cityID' => (int) $_POST['cityID']));
        $value0 = 0;
        $data = CHtml::listData($data, 'disID', 'disName');
        echo CHtml::tag('option', array('value' => $value0), '----- Chọn quận/huyện -----', true);
        foreach ($data as $value => $name) {
            echo CHtml::tag('option', array('value' => $value), CHtml::encode($name), true);
        }
        /*
          if (!empty($data)) {
          foreach ($data as $item) {
          echo CHtml::tag('option', array('value' => $item->disID), $item->disName, true);
          }
         */
    }

    public function actionLoginweb() {

        $email = $_POST['txtuser'];
        $pass = $_POST['txtpass'];
        $passmd5 = md5(md5($pass));
        $login = UserTb::model()->findAll(array(
            'condition' => 'flag=1 and email= "' . $email . '" and pass="' . $passmd5 . '"',
        ));

        $this->pageTitle = 'Đăng nhập';
        if (count($login) > 0) {
            $session = new CHttpSession;
            $session->open();
            $unam = '';
            $grup = 0;
            $uid = 0;
            foreach ($login as $item) {
                $unam = $item->username;
                $grup = $item->groupid;
                $uid = $item->uid;
            }
            //$id =  $login->uid;
            //session_start();
            $my_array = array($email, $grup, $unam, $uid);
            $session['user_salesmart'] = $my_array;
            //$criteria = new CDbCriteria();
            //$criteria->condition ='flag=1 and stardate <="'.new CDbExpression('NOW()').'" and enddate>="'.new CDbExpression('NOW()').'"';
            if ($grup < 49) {
                $program = Program::model()->findAll(' flag=1 and stardate <="' . date("Y-m-d") . '" and enddate>="' . date("Y-m-d") . '"');
                if (!empty($program)) {

                    foreach ($program as $item) {
                        //tim phan qua va so luong nguoi tham gia
                        if ($item->gid > 1 && $item->gid < 3) {
                            $idqua = 0;
                            $sl = 0;
                            $qua = Phanqua::model()->findAll('`flag`=1 and `programid`=' . $item->gid . ' limit 1');
                            if (!empty($qua)) {
                                foreach ($qua as $q) {
                                    $idqua = $q->id;
                                    $sl = $q->numberpeople;
                                }
                                //kiem tra xem user nay da log vao lan truoc chua
                                $ton = $this->kiemtra_tontai_user_program($item->gid, $uid, $idqua);
                                if ($ton < 1) {
                                    //dem so nguoi da tham gia chuong trinh tai phan qua
                                    $postion = $this->dem_so_nguoi_da_thamgia($item->gid, $idqua);
                                    //neu so luong nguoi tham gia da du thi cap nhat lai trang thai
                                    if ($postion < $sl) {

                                        $now = getdate();
                                        $nhangiai = new Nhangiai();
                                        $nhangiai->mathuong = $now["year"] . $now["mon"] . $now["mday"] . '/GMT';
                                        $nhangiai->ngay = new CDbExpression('NOW()');
                                        $nhangiai->trangthai = 0;
                                        $nhangiai->uid = $uid;
                                        $nhangiai->idqua = $idqua;
                                        $nhangiai->save();

                                        $session['user_nhangiai'] = array($now["year"] . $now["mon"] . $now["mday"] . '/GMT', $postion + 1, $q->name);
                                    } else {
                                        Yii::app()->db
                                                ->createCommand("UPDATE phanqua SET flag = 0 WHERE id=:id")
                                                ->bindValues(array(':id' => $idqua))
                                                ->execute();
                                    }
                                    $prolog = new ProgramDetail();
                                    $prolog->programid = $item->gid;
                                    $prolog->userid = $uid;
                                    $prolog->position = $postion + 1;
                                    $prolog->date_log = new CDbExpression('NOW()');
                                    $prolog->idqua = $idqua;
                                    $prolog->save();
                                }
                            }
                        } else {
                            $idqua = 0;
                            $sl = 0;
                            $qua = Phanqua::model()->findAll('`flag`=1 and `programid`=' . $item->gid . ' limit 1');
                            if (!empty($qua)) {
                                foreach ($qua as $q) {
                                    $idqua = $q->id;
                                    $sl = $q->numberpeople;
                                }
                                //kiem tra xem user nay da log vao lan truoc chua
                                $ton = $this->kiemtra_tontai_user_program($item->gid, $uid, $idqua);
                                if ($ton < 1) {
                                    //dem so nguoi da tham gia chuong trinh tai phan qua
                                    $postion = $this->dem_so_nguoi_da_thamgia($item->gid, $idqua);
                                    //neu so luong nguoi tham gia da du thi cap nhat lai trang thai
                                    if ($postion + 2 > $sl) {
                                        Yii::app()->db
                                                ->createCommand("UPDATE phanqua SET flag = 0 WHERE id=:id")
                                                ->bindValues(array(':id' => $idqua))
                                                ->execute();
                                        $now = getdate();
                                        $nhangiai = new Nhangiai();
                                        $nhangiai->mathuong = $now["year"] . $now["mon"] . $now["mday"] . '/GMT';
                                        $nhangiai->ngay = new CDbExpression('NOW()');
                                        $nhangiai->trangthai = 0;
                                        $nhangiai->uid = $uid;
                                        $nhangiai->idqua = $idqua;
                                        $nhangiai->save();

                                        $session['user_nhangiai'] = array($now["year"] . $now["mon"] . $now["mday"] . '/GMT', $postion + 1, $q->name);
                                    }
                                    $prolog = new ProgramDetail();
                                    $prolog->programid = $item->gid;
                                    $prolog->userid = $uid;
                                    $prolog->position = $postion + 1;
                                    $prolog->date_log = new CDbExpression('NOW()');
                                    $prolog->idqua = $idqua;
                                    $prolog->save();
                                }
                            }
                        }
                    }
                }
            }
            //session_register("userlogin");
            //$_SESSION["userlogin"] = $my_array;
            // Yii::app()->session->add('userlogin',$login);
            $this->redirect(Yii::app()->user->returnUrl);
        } else {
            $this->render('home', array(
                'email' => $email,
            ));
        }
    }

    public function kiemtra_tontai_user_program_trungthang($id, $uId) {
        $sql = "SELECT COUNT(*) as count FROM `program_detail` where `programid`=" . $id . ' and `userid`=' . $uId;
        $dbCommand = Yii::app()->db->createCommand($sql);
        $data = $dbCommand->queryAll();
        $postion = 0;
        foreach ($data as $i) {
            $postion = $i['count'];
        }
        return $postion;
    }

    public function kiemtra_tontai_user_program($id, $uId, $idqua) {
        $sql = "SELECT COUNT(*) as count FROM `program_detail` where `programid`=" . $id . ' and `userid`=' . $uId . ' and `idqua`=' . $idqua;
        $dbCommand = Yii::app()->db->createCommand($sql);
        $data = $dbCommand->queryAll();
        $postion = 0;
        foreach ($data as $i) {
            $postion = $i['count'];
        }
        return $postion;
    }

    public function dem_so_nguoi_da_thamgia($id, $idqua) {
        $sql = "SELECT COUNT(*) as count FROM `program_detail` where `programid`=" . $id . ' and `idqua`=' . $idqua;
        $dbCommand = Yii::app()->db->createCommand($sql);

        $data = $dbCommand->queryAll();
        $postion = 0;
        foreach ($data as $i) {
            $postion = $i['count'];
        }
        return $postion;
    }

    public function actionTimkiem() {


        if (isset($_GET['cityID'])) {
            $cityID = $_GET['cityID'];
        } else {
            $cityID = Yii::app()->request->cookies['cityID']->value;
        }
        // $disID = $_POST['disID'];
        $key = '';
        if (isset($_POST['key'])) {
            $key = $_POST['key'];
        }
        //Yii::app()->request->cookies['cityID'] = new CHttpCookie('cityID', $cityID);
        $cookie = new CHttpCookie('cityID', $cityID);
        $cookie->expire = time() + 60 * 60 * 1;
        Yii::app()->request->cookies['$cityID'] = $cookie;
        // $category = $_POST['danhmuc'];
        //$chuoi ='chao mung ban den voi search '.$cityID.'/'.$disID.'/key='.$key;
        //$this->render('trang', array('chuoi' => $chuoi));
        $this->pageTitle = 'Tìm kiếm';

        $like = '';
        if (!empty($key)) {
            $like = ' and pr_name LIKE "%' . $key . '%"';
        }
        $city = '';
        if (!empty($cityID)) {
            $city = ' and ctiID =' . $cityID;
        }
        $district = '';
        if (!empty($disID)) {
            $district = ' and disID =' . $disID;
        }
        $danhmuc = '';
        if (!empty($category)) {
            $category1 = Category::model()->findAll(array(
                'condition' => 'flag=1 and parent= ' . $category,
            ));
            $danhmuc = ' AND cate_id in(' . $category;

            if (!empty($category1)) {
                foreach ($category1 as $item) {
                    $danhmuc = $danhmuc . ',' . $item->cateid;
                }
                $danhmuc = $danhmuc . ')';
            } else {
                $danhmuc = ' and cate_id =' . $category;
            }
        }
        $sql = 'flag=1 ' . $danhmuc . $city . $district . $like . ' order by `position` ASC';
        $criteria = new CDbCriteria();
        $criteria->condition = $sql;
        //$criteria->order = 'rank DESC,id DESC';

        $count = Product::model()->count($criteria);
        $pages = new CPagination($count);
        //results per page
        $pages->pageSize = 60;
        $pages->applyLimit($criteria);
        $produc = Product::model()->findAll($criteria);
        $result = 'Kết quả: tìm thấy ' . $count . ' địa điểm';
        $this->render('danh-muc', array(
            'produc' => $produc,
            'pages' => $pages,
            'result' => $result,
                //'sql' => $sql,
        ));
    }

    public function actionTimkiem1($id) {


        if (isset($_GET['id'])) {
            $cityID = $_GET['id'];
        } else {
            $cityID = Yii::app()->request->cookies['cityID']->value;
            echo $cityID;
        }
        //echo $cityID;
        // $disID = $_POST['disID'];
        //Yii::app()->request->cookies['cityID'] = new CHttpCookie('cityID', $cityID);
        $cookie = new CHttpCookie('cityID', $cityID);
        $cookie->expire = time() + 60 * 60 * 1;
        Yii::app()->request->cookies['$cityID'] = $cookie;
        $url = Yii::app()->createUrl('tim-dia-diem');
        $this->redirect($url);
    }

    /**
     * This is the action to handle external exceptions.
     */
    public function actionError() {
        if ($error = Yii::app()->errorHandler->error) {
            if (Yii::app()->request->isAjaxRequest)
                echo $error['message'];
            else
                $this->render('error', $error);
        }
    }

}
